TEST2 This is an R Markdown format used for publishing markdown documents to GitHub. When you click the Knit button all R code chunks are run and a markdown file (.md) suitable for publishing to GitHub is generated.
S-Dot 1시간 측정 평균값이 저장된 csv파일 read
#분석하고자 하는 csv데이터를 sdot이라는 데이터 프레임에 넣기
sdot<-read.csv("data/sdot_20200507.csv", fileEncoding = 'euc-kr', head=TRUE, check.names=FALSE)
library(rmarkdown)
#데이터 중 위에서부터 100개의 데이터만 확인
paged_table(sdot) %>% head(100)
sdot에 저장된 값에 대한 데이터 요약
#명령어 summary(데이터프레임)
summary(sdot)
## 시리얼 date hour 초미세먼지 (㎍/㎥)
## V02Q1940043: 24 2020.5.1:20280 Min. : 0.00 Min. : 0.00
## V02Q1940044: 24 1st Qu.: 5.75 1st Qu.: 14.10
## V02Q1940045: 24 Median :11.50 Median : 23.69
## V02Q1940046: 24 Mean :11.50 Mean : 23.56
## V02Q1940047: 24 3rd Qu.:17.25 3rd Qu.: 31.00
## V02Q1940049: 24 Max. :23.00 Max. :175.17
## (Other) :20136
## 미세먼지 (㎍/㎥) 기온 (℃) 상대습도 (%) 풍향 (°)
## Min. : 0.00 Min. :15.24 Min. :31.57 Min. : 0.000
## 1st Qu.: 18.82 1st Qu.:19.46 1st Qu.:57.06 1st Qu.: 0.000
## Median : 31.90 Median :21.21 Median :68.27 Median : 0.000
## Mean : 31.75 Mean :22.02 Mean :64.78 Mean : 2.363
## 3rd Qu.: 41.67 3rd Qu.:24.41 3rd Qu.:72.12 3rd Qu.: 0.000
## Max. :268.33 Max. :34.23 Max. :85.62 Max. :299.593
##
## 풍속 (m/s) 돌풍 풍향 (°) 돌풍 풍속 (m/s) 조도 (lux)
## Min. :0.00000 Min. : 0.000 Min. :0.00000 Min. : 1.00
## 1st Qu.:0.00000 1st Qu.: 0.000 1st Qu.:0.00000 1st Qu.: 5.12
## Median :0.00000 Median : 0.000 Median :0.00000 Median : 1296.71
## Mean :0.01573 Mean : 2.328 Mean :0.03093 Mean : 6664.73
## 3rd Qu.:0.00000 3rd Qu.: 0.000 3rd Qu.:0.00000 3rd Qu.: 9079.19
## Max. :4.55714 Max. :295.750 Max. :8.40714 Max. :50200.48
##
## 자외선 (UVI) 소음 (dB) 진동(x) (g) 진동(y) (g)
## Min. : 1.000 Min. : 0.00 Min. :0.00000 Min. :0.00000
## 1st Qu.: 2.000 1st Qu.:45.38 1st Qu.:0.01833 1st Qu.:0.02815
## Median : 2.130 Median :48.07 Median :0.02276 Median :0.04826
## Mean : 9.105 Mean :48.17 Mean :0.02797 Mean :0.05542
## 3rd Qu.: 10.823 3rd Qu.:50.90 3rd Qu.:0.03500 3rd Qu.:0.07880
## Max. :108.767 Max. :64.52 Max. :0.11077 Max. :0.17696
##
## 진동(z) (g) 진동(x) 최대 (g) 진동(y) 최대 (g) 진동(z) 최대 (g)
## Min. :0.000 Min. :0.00000 Min. :0.0000 Min. : 0.000
## 1st Qu.:1.006 1st Qu.:0.07241 1st Qu.:0.1163 1st Qu.: 1.095
## Median :1.029 Median :0.08708 Median :0.1300 Median : 1.107
## Mean :1.026 Mean :0.09167 Mean :0.1340 Mean : 1.117
## 3rd Qu.:1.050 3rd Qu.:0.10088 3rd Qu.:0.1454 3rd Qu.: 1.124
## Max. :1.116 Max. :2.41815 Max. :2.0540 Max. :10.451
##
## 흑구 온도 (℃) 미세먼지 보정 (㎍/㎥) 초미세먼지 보정 (㎍/㎥)
## Min. : 4.833 Min. :-88.12 Min. :-98.12
## 1st Qu.: 5.000 1st Qu.: 36.09 1st Qu.: 23.23
## Median : 5.000 Median : 46.00 Median : 27.76
## Mean : 7.590 Mean : 43.68 Mean : 26.87
## 3rd Qu.: 5.000 3rd Qu.: 53.31 3rd Qu.: 32.00
## Max. :195.385 Max. :345.60 Max. :179.97
##
위의 값을 확인 했을때 현재 살펴보고자 하는 미세먼지, 초미세먼지 결측값, 음수, 0값을 제거
# 분석 편의상 컬럼 이름 변경
sdot <- sdot %>% dplyr::rename(superdust =`초미세먼지 보정 (㎍/㎥)`)
sdot <- sdot %>% dplyr::rename(dust =`미세먼지 보정 (㎍/㎥)`)
# Na또는 Nan등 결측값 확인
sum(is.na(sdot))
## [1] 0
0개
#미세먼지 값이 0이하 or 초미세먼지 값이 0 이하 값 제거
sdot <-sdot %>% filter(!superdust <=0 , !dust <=0)
#명령어 summary(데이터프레임)로 미세먼지 보정, 초미세먼지 보정 값 재확인
summary(sdot)
## 시리얼 date hour 초미세먼지 (㎍/㎥)
## V02Q1940043: 24 2020.5.1:19960 Min. : 0.00 Min. : 0.03333
## V02Q1940044: 24 1st Qu.: 5.00 1st Qu.: 14.37931
## V02Q1940047: 24 Median :11.00 Median : 23.84413
## V02Q1940050: 24 Mean :11.49 Mean : 23.81125
## V02Q1940052: 24 3rd Qu.:18.00 3rd Qu.: 31.07407
## V02Q1940054: 24 Max. :23.00 Max. :175.16667
## (Other) :19816
## 미세먼지 (㎍/㎥) 기온 (℃) 상대습도 (%) 풍향 (°)
## Min. : 0.06667 Min. :15.24 Min. :31.57 Min. : 0.000
## 1st Qu.: 19.28325 1st Qu.:19.46 1st Qu.:57.10 1st Qu.: 0.000
## Median : 32.08333 Median :21.21 Median :68.29 Median : 0.000
## Mean : 32.08483 Mean :22.02 Mean :64.81 Mean : 2.382
## 3rd Qu.: 41.78571 3rd Qu.:24.41 3rd Qu.:72.13 3rd Qu.: 0.000
## Max. :268.33333 Max. :34.23 Max. :85.62 Max. :299.593
##
## 풍속 (m/s) 돌풍 풍향 (°) 돌풍 풍속 (m/s) 조도 (lux)
## Min. :0.00000 Min. : 0.000 Min. :0.00000 Min. : 1
## 1st Qu.:0.00000 1st Qu.: 0.000 1st Qu.:0.00000 1st Qu.: 5
## Median :0.00000 Median : 0.000 Median :0.00000 Median : 1286
## Mean :0.01595 Mean : 2.349 Mean :0.03131 Mean : 6672
## 3rd Qu.:0.00000 3rd Qu.: 0.000 3rd Qu.:0.00000 3rd Qu.: 9088
## Max. :4.55714 Max. :295.750 Max. :8.40714 Max. :50200
##
## 자외선 (UVI) 소음 (dB) 진동(x) (g) 진동(y) (g)
## Min. : 1.000 Min. : 0.00 Min. :0.00000 Min. :0.00000
## 1st Qu.: 2.000 1st Qu.:45.39 1st Qu.:0.01833 1st Qu.:0.02800
## Median : 2.120 Median :48.04 Median :0.02267 Median :0.04821
## Mean : 9.097 Mean :48.15 Mean :0.02786 Mean :0.05543
## 3rd Qu.: 10.828 3rd Qu.:50.88 3rd Qu.:0.03467 3rd Qu.:0.07900
## Max. :108.767 Max. :64.52 Max. :0.11077 Max. :0.17696
##
## 진동(z) (g) 진동(x) 최대 (g) 진동(y) 최대 (g) 진동(z) 최대 (g)
## Min. :0.000 Min. :0.00000 Min. :0.0000 Min. : 0.000
## 1st Qu.:1.006 1st Qu.:0.07241 1st Qu.:0.1163 1st Qu.: 1.095
## Median :1.029 Median :0.08700 Median :0.1300 Median : 1.107
## Mean :1.026 Mean :0.09149 Mean :0.1340 Mean : 1.117
## 3rd Qu.:1.050 3rd Qu.:0.10067 3rd Qu.:0.1453 3rd Qu.: 1.124
## Max. :1.116 Max. :2.41815 Max. :2.0540 Max. :10.451
##
## 흑구 온도 (℃) dust superdust
## Min. : 4.833 Min. : 0.1333 Min. : 0.03448
## 1st Qu.: 5.000 1st Qu.: 36.8667 1st Qu.: 23.48148
## Median : 5.000 Median : 46.2069 Median : 27.87750
## Mean : 7.627 Mean : 44.3847 Mean : 27.40362
## 3rd Qu.: 5.000 3rd Qu.: 53.4511 3rd Qu.: 32.07692
## Max. :195.385 Max. :345.6000 Max. :179.96667
##
#결측값 및 0이하 값 제거 확인
#시간에 따른 미세먼지 값 확인
library(plotly)
## Loading required package: ggplot2
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
plot_ly(sdot, x = ~hour, y = sdot$dust, name = 'trace 0', type = 'scatter', mode = 'markers',
marker = list(opacity = 0.4, color = "blue"))
plot_ly(sdot, x = ~hour, y = sdot$superdust, name = 'trace 0', type = 'scatter', mode = 'markers',
marker = list(opacity = 0.4, color = "red"))
You can also embed plots, for example:
Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.